<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>金雀医疗 ·   实时看板</title>
    <link href="demo/styles/common.css" rel="stylesheet">
    <script src="demo/scripts/Plugin/jquery-3.3.1.min.js"></script>
    <script src="demo/scripts/common.js"></script>
    <script src="demo/scripts/index.js"></script>
    <script src="demo/scripts/Plugin/laydate/laydate.js"></script>
    <script src="dist/echarts.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://cdn.bootcss.com/vue-resource/1.0.3/vue-resource.js" type="text/javascript" charset="utf-8"></script>

    <link rel="canonical" href="https://getbootstrap.com/docs/5.1/examples/headers/">



    <!-- Bootstrap core CSS -->
    <link href="assets/dist/css/bootstrap.min.css" rel="stylesheet">

    <style>
        .bd-placeholder-img {
            font-size: 1.125rem;
            text-anchor: middle;
            -webkit-user-select: none;
            -moz-user-select: none;
            user-select: none;
        }

        @media (min-width: 768px) {
            .bd-placeholder-img-lg {
                font-size: 3.5rem;
            }
        }
    </style>


    <!-- Custom styles for this template -->
    <link href="styles/headers.css" rel="stylesheet">
</head>
<body>

<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
    <symbol id="bootstrap" viewBox="0 0 118 94">
        <title>Bootstrap</title>
        <path fill-rule="evenodd" clip-rule="evenodd" d="M24.509 0c-6.733 0-11.715 5.893-11.492 12.284.214 6.14-.064 14.092-2.066 20.577C8.943 39.365 5.547 43.485 0 44.014v5.972c5.547.529 8.943 4.649 10.951 11.153 2.002 6.485 2.28 14.437 2.066 20.577C12.794 88.106 17.776 94 24.51 94H93.5c6.733 0 11.714-5.893 11.491-12.284-.214-6.14.064-14.092 2.066-20.577 2.009-6.504 5.396-10.624 10.943-11.153v-5.972c-5.547-.529-8.934-4.649-10.943-11.153-2.002-6.484-2.28-14.437-2.066-20.577C105.214 5.894 100.233 0 93.5 0H24.508zM80 57.863C80 66.663 73.436 72 62.543 72H44a2 2 0 01-2-2V24a2 2 0 012-2h18.437c9.083 0 15.044 4.92 15.044 12.474 0 5.302-4.01 10.049-9.119 10.88v.277C75.317 46.394 80 51.21 80 57.863zM60.521 28.34H49.948v14.934h8.905c6.884 0 10.68-2.772 10.68-7.727 0-4.643-3.264-7.207-9.012-7.207zM49.948 49.2v16.458H60.91c7.167 0 10.964-2.876 10.964-8.281 0-5.406-3.903-8.178-11.425-8.178H49.948z"></path>
    </symbol>
    <symbol id="home" viewBox="0 0 16 16">
        <path d="M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4H2.5z"/>
    </symbol>
    <symbol id="speedometer2" viewBox="0 0 16 16">
        <path d="M8 4a.5.5 0 0 1 .5.5V6a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 8 4zM3.732 5.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707zM2 10a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 10zm9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5zm.754-4.246a.389.389 0 0 0-.527-.02L7.547 9.31a.91.91 0 1 0 1.302 1.258l3.434-4.297a.389.389 0 0 0-.029-.518z"/>
        <path fill-rule="evenodd" d="M0 10a8 8 0 1 1 15.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A7.988 7.988 0 0 1 0 10zm8-7a7 7 0 0 0-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 0 0 8 3z"/>
    </symbol>
    <symbol id="table" viewBox="0 0 16 16">
        <path d="M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2zm15 2h-4v3h4V4zm0 4h-4v3h4V8zm0 4h-4v3h3a1 1 0 0 0 1-1v-2zm-5 3v-3H6v3h4zm-5 0v-3H1v2a1 1 0 0 0 1 1h3zm-4-4h4V8H1v3zm0-4h4V4H1v3zm5-3v3h4V4H6zm4 4H6v3h4V8z"/>
    </symbol>
    <symbol id="people-circle" viewBox="0 0 16 16">
        <path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
        <path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
    </symbol>
    <symbol id="grid" viewBox="0 0 16 16">
        <path d="M1 2.5A1.5 1.5 0 0 1 2.5 1h3A1.5 1.5 0 0 1 7 2.5v3A1.5 1.5 0 0 1 5.5 7h-3A1.5 1.5 0 0 1 1 5.5v-3zM2.5 2a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zm6.5.5A1.5 1.5 0 0 1 10.5 1h3A1.5 1.5 0 0 1 15 2.5v3A1.5 1.5 0 0 1 13.5 7h-3A1.5 1.5 0 0 1 9 5.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zM1 10.5A1.5 1.5 0 0 1 2.5 9h3A1.5 1.5 0 0 1 7 10.5v3A1.5 1.5 0 0 1 5.5 15h-3A1.5 1.5 0 0 1 1 13.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3zm6.5.5A1.5 1.5 0 0 1 10.5 9h3a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-3A1.5 1.5 0 0 1 9 13.5v-3zm1.5-.5a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h3a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5h-3z"/>
    </symbol>
</svg>

<main>
    <h1 class="visually-hidden">Headers examples</h1>

    <div class="container" >
        <header class="d-flex flex-wrap justify-content-center py-3 mb-4 border-bottom">
            <a href="/" class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-dark text-decoration-none">
                <!--                <svg class="bi me-2" width="40" height="32"><use xlink:href="#bootstrap"/></svg>-->
                <img src="img/canary.jpg" style="width: 48px;"/>
                <span class="fs-4">金雀医疗</span>
            </a>

            <ul class="nav nav-pills">
                <li class="nav-item"><a href="./index.html" class="nav-link" aria-current="page">首页</a></li>
                <li class="nav-item"><a href="./dashboard.html" class="nav-link active">看板</a></li>
                <li class="nav-item"><a href="./knowledge_graph.html" class="nav-link">图谱</a></li>
                <li class="nav-item"><a href="./faqs.html" class="nav-link">FAQs</a></li>
                <li class="nav-item"><a href="./about.html" class="nav-link">About</a></li>
            </ul>
        </header>


        <!--内容部分-->
        <div class="con left" id="app"style="width: 1300px">
            <!--数据总概-->
            <div class="con_div">
                <div class="con_div_text left">
                    <div class="con_div_text01 left">
                        <img src="demo/images/info_1.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>血压(NIBP)</p>
                            <p>{{respParams.FBp}}/{{respParams.FBp}}mmHg</p>
                        </div>
                    </div>
                    <div class="con_div_text01 right">
                        <img src="demo/images/info_2.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>心率(HR)</p>
                            <p>{{respParams.FHr}}</p>
                        </div>
                    </div>
                </div>
                <div class="con_div_text_e2 left">
                    <div class="con_div_text01 left">
                        <img src="demo/images/info_3.png" class="left text01_img"/>
                        <div class="text01e_div">
                            <p>监测中...</p>
                            <p class="sky">{{resp.message_emergency}}</p>
                        </div>
                    </div>
                    <!--            <div class="con_div_text01 right">-->
                    <!--                <img src="../images/info_4.png" class="left text01_img"/>-->
                    <!--                <div class="left text01_div">-->
                    <!--                    <p>服用药物</p>-->
                    <!--                    <p class="sky">{{resp.f_medicines}}</p>-->
                    <!--                </div>-->
                    <!--            </div>-->
                </div>
                <div class="con_div_text_e3 left">

                    <div class="con_div_text01 left">
                        <img src="demo/images/info_5.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>呼吸</p>
                            <p class="org">{{respParams.FBreathe}}</p>
                        </div>
                    </div>
                    <div class="con_div_text01 right">
                        <img src="demo/images/info_6.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>服用药物</p>
                            <p class="org">{{resp.FMedicines}}</p>
                        </div>
                    </div>
                </div>


            </div>
            <!--统计分析图-->
            <div class="div_any">
                <div class="div_any02">
                    <div class="div_any_child div_height">
<!--                        <div class="div_any_title any_title_width"><img src="demo/images/title_0.png">心电波形</div>-->
                        <div id="mapChart" style="width:97.5%;height:108.5%;display: inline-block;padding-left: 1.25%;padding-top:0.01%"></div>
                    </div>
                </div>
                <div class="div_any01">
                    <div class="div_any_child">
                        <div class="div_any_title"><img src="demo/images/title_3.png">实时参数监测</div>
                        <p id="lineChart" class="p_chart"></p>
                    </div>
                </div>
                <!--        <div class="div_any01">-->
                <!--            <div class="div_any_child">-->
                <!--                <div class="div_any_title"><img src="../images/title_4.png">default</div>-->
                <!--                <p id="lineChart2" class="p_chart"></p>-->
                <!--            </div>-->
                <!--        </div>-->
                <!--        <div class="left div_any01">-->
                <!--            <div class="div_any_child">-->
                <!--                <div class="div_any_title"><img src="../images/title_1.png">default</div>-->
                <!--                <p id="pieChart1" class="p_chart"></p>-->
                <!--            </div>-->
                <!--            <div class="div_any_child">-->
                <!--                <div class="div_any_title"><img src="../images/title_2.png">default</div>-->
                <!--                <p id="histogramChart" class="p_chart"></p>-->
                <!--            </div>-->
                <!--        </div>-->
            </div>


            <div class="con_div">
                <div class="con_div_text left">
                    <div class="con_div_text01 left">
                        <img src="demo/images/info_1.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>CO2</p>
                            <p>0 mmHg</p>
                        </div>
                    </div>
                    <div class="con_div_text01 right">
                        <img src="demo/images/info_2.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>xx</p>
                            <p>x</p>
                        </div>
                    </div>
                </div>
                <div class="con_div_text left">

                    <div class="con_div_text01 left">
                        <img src="demo/images/info_5.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>脉搏血氧饱和度(SpO2)</p>
                            <p class="org">{{respParams.FSpo2}} %</p>
                        </div>
                    </div>
                    <div class="con_div_text01 right">
                        <img src="demo/images/info_6.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>动脉血氧饱和度(SaO2)</p>
                            <p class="org">{{respParams.FSao2}} %</p>
                        </div>
                    </div>
                </div>
                <div class="con_div_text left">

                    <div class="con_div_text01 left">
                        <img src="demo/images/info_5.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>O2</p>
                            <p class="org">{{respParams.FO2}}</p>
                        </div>
                    </div>
                    <div class="con_div_text01 right">
                        <img src="demo/images/info_6.png" class="left text01_img"/>
                        <div class="left text01_div">
                            <p>N2O</p>
                            <p class="org">{{respParams.FN2o}}</p>
                        </div>
                    </div>
                </div>
            </div>



        </div>

        <script>
            var app = new Vue({
                el: '#app',
                data: {
                    timer : '',
                    dataUrl: '/v1/print',
                    graphUrl: '/v1/show',
                    monitorInfoUrl: '/v1/monitorInfo',
                    dashboardUrl: '/v1/dashboard',
                    pyUrl: '/api',
                    healthInfoUrl: '/api/v1/healthinfo',
                    resp: 'no data',
                    respParams: {},// params includes: n2o, o2, spo2, sao2
                },
                created: function () {
                    this.init()
                },
                methods: {
                    init: function () {
                        this.timer = setInterval(() => {
                            this.getMonitorInfo();
                        }, 5000);
                    },
                    getMonitorInfo: function () {
                        this.$http({
                            method: 'GET',
                            url: this.dashboardUrl,
                        }).then(function(response){
                            this.resp = response.data;
                            for (let i = 0 ; i < this.resp['data'].length; i++) {
                                let item = this.resp['data'][i]
                                let ArrVal = item['f_data_points'].slice(1, -1).split(",")
                                let lastVal = ArrVal[ArrVal.length - 1].split(":")[1]
                                if (item['f_name'] == 'FN2o') {
                                    this.respParams['FN2o'] = lastVal
                                } else if (item['f_name'] == 'FO2') {
                                    this.respParams['FO2'] = lastVal
                                } else if (item['f_name'] == 'FSao2') {
                                    this.respParams['FSao2'] = lastVal
                                } else if (item['f_name'] == 'FSpo2') {
                                    this.respParams['FSpo2'] = lastVal
                                } else if (item['f_name'] == 'FHr') {
                                    this.respParams['FHr'] = lastVal
                                } else if (item['f_name'] == 'FBp') {
                                    this.respParams['FBp'] = lastVal
                                } else if (item['f_name'] == 'FBreathe') {
                                    this.respParams['FBreathe'] = lastVal
                                }
                            }
                            modifyLineChart(response.data);
                        },function (error) {
                            this.resp = 'error message: ' + error
                        })
                    },
                    freshGraph: function () {
                        document.getElementById('graph').contentWindow.location.reload(true);
                    },
                    beforeDestory: function () {
                        cleanInterval(this.timer);
                    },
                    pyapiHelper: function () {
                        this.$http({
                            method: 'GET',
                            url: this.pyUrl,
                        }).then(function (response) {
                            this.resp = response.data;
                        }, function (error) {
                            this.resp = 'error message: ' + error
                        })
                    },
                    healthInfoHelper: function () {
                        this.$http({
                            method: 'GET',
                            url: this.healthinfoUrl,
                        }).then(function (response) {
                            this.resp = response.data;
                        }, function (error) {
                            this.resp = 'error message: ' + error
                        })
                    }
                }
            })

        </script>

        <footer>
        </footer>
    </div>


</main>


<script src="assets/dist/js/bootstrap.bundle.min.js"></script>


</body>
</html>
